package com.lims.landInfo.model;

import javax.persistence.*;

import org.hibernate.annotations.GenericGenerator;

import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;

import javacommon.base.*;

import cn.org.rapid_framework.util.*;

/**
 * @author zzh
 * @version 1.0
 * @since 1.0
 */@Entity
@Table(name = "LIMS_LandUse")
public class LandUse extends BaseEntity implements java.io.Serializable{
	//date formats
	public static final String FORMAT_CREATE_DATE = DATE_FORMAT;
	public static final String FORMAT_LAND_DATE = DATE_FORMAT;
	private static final long serialVersionUID = 5454155825314635342L;

	/**
     * businessUse       db_column: businessUse 
     */ 	
	private java.lang.Double businessUse;
    /**
     * changeType       db_column: changeType 
     */ 	
	private java.lang.Integer changeType;
    /**
     * commFaciUse       db_column: commFaciUse 
     */ 	
	
	private java.lang.Double commFaciUse;
    /**
     * createDate       db_column: createDate 
     */ 	
	private java.util.Date createDate;
    /**
     * deedUse       db_column: deedUse 
     */ 	
	private java.lang.String deedUse;
    /**
     * describe       db_column: describe 
     */ 	
	private java.lang.String describe;
    /**
     * industrialUse       db_column: industrialUse 
     */ 	
	private java.lang.Double industrialUse;
    /**
     * integrativeUse       db_column: integrativeUse 
     */ 	
	private java.lang.Double integrativeUse;
    /**
     * landDate       db_column: landDate 
     */ 	
	private java.util.Date landDate;
    /**
     * landno       db_column: landno 
     */ 	
	private java.lang.String landno;
    /**
     * miningUse       db_column: miningUse 
     */ 	
	private java.lang.Double miningUse;
    /**
     * objid       db_column: OBJID 
     */ 	
	private java.lang.String objid;
    /**
     * officeUse       db_column: officeUse 
     */ 	
	private java.lang.Double officeUse;
    /**
     * oldContent       db_column: oldContent 
     */ 	
	private java.lang.String oldContent;
    /**
     * oldno       db_column: oldno 
     */ 	
	private java.lang.String oldno;
    /**
     * otherBuse       db_column: otherBUse 
     */ 	
	private java.lang.Double otherBuse;
    /**
     * otherUse       db_column: otherUse 
     */ 	
	private java.lang.Double otherUse;
    /**
     * plantUse       db_column: plantUse 
     */ 	
	private java.lang.Double plantUse;
    /**
     * residentialUse       db_column: residentialUse 
     */ 	
	private java.lang.Double residentialUse;
    /**
     * sno       db_column: sno 
     */ 	
	private java.lang.Integer sno;
    /**
     * stylisticUse       db_column: stylisticUse 
     */ 	
	private java.lang.Double stylisticUse;
    /**
     * touristUse       db_column: touristUse 
     */ 	
	private java.lang.Double touristUse;
    /**
     * trafficUse       db_column: trafficUse 
     */ 	
	private java.lang.Double trafficUse;
    /**
     * warehouseUse       db_column: warehouseUse 
     */ 	
	private java.lang.Double warehouseUse;
	//columns END


	public LandUse(){}

	public LandUse(java.lang.String objid){
		this.objid = objid;
	}

	public boolean equals(Object obj) {
		if(obj instanceof LandUse == false) return false;
		if(this == obj) return true;
		LandUse other = (LandUse)obj;
		return new EqualsBuilder()
			.append(getObjid(),other.getObjid())
			.isEquals();
	}
	
	@Column(name = "businessUse", unique = false, nullable = true, insertable = true, updatable = true, length = 53)
	public java.lang.Double getBusinessUse() {
		return this.businessUse;
	}
	
	@Column(name = "changeType", unique = false, nullable = true, insertable = true, updatable = true, length = 10)
	public java.lang.Integer getChangeType() {
		return this.changeType;
	}
	
	@Column(name = "commFaciUse", unique = false, nullable = true, insertable = true, updatable = true, length = 53)
	public java.lang.Double getCommFaciUse() {
		return this.commFaciUse;
	}
	
	@Column(name = "createDate", unique = false, nullable = true, insertable = true, updatable = true, length = 23)
	public java.util.Date getCreateDate() {
		return this.createDate;
	}
	
	@Transient
	public String getCreateDateString() {
		return DateConvertUtils.format(getCreateDate(), FORMAT_CREATE_DATE);
	}
	
	@Column(name = "deedUse", unique = false, nullable = true, insertable = true, updatable = true, length = 50)
	public java.lang.String getDeedUse() {
		return this.deedUse;
	}
	
	@Column(name = "describe", unique = false, nullable = true, insertable = true, updatable = true, length = 200)
	public java.lang.String getDescribe() {
		return this.describe;
	}
	
	@Column(name = "industrialUse", unique = false, nullable = true, insertable = true, updatable = true, length = 53)
	public java.lang.Double getIndustrialUse() {
		return this.industrialUse;
	}
	@Column(name = "integrativeUse", unique = false, nullable = true, insertable = true, updatable = true, length = 53)
	public java.lang.Double getIntegrativeUse() {
		return this.integrativeUse;
	}
	
	@Column(name = "landDate", unique = false, nullable = true, insertable = true, updatable = true, length = 23)
	public java.util.Date getLandDate() {
		return this.landDate;
	}
	
	@Transient
	public String getLandDateString() {
		return DateConvertUtils.format(getLandDate(), FORMAT_LAND_DATE);
	}
	
	@Column(name = "landno", unique = false, nullable = true, insertable = true, updatable = true, length = 20)
	public java.lang.String getLandno() {
		return this.landno;
	}
	
	@Column(name = "miningUse", unique = false, nullable = true, insertable = true, updatable = true, length = 53)
	public java.lang.Double getMiningUse() {
		return this.miningUse;
	}
	
	@Id @GeneratedValue(generator="custom-id")
	@GenericGenerator(name="custom-id", strategy = "uuid")//nullable = false, 
	@Column(name = "OBJID", insertable = true, updatable = true, length = 32)
	public java.lang.String getObjid() {
		return this.objid;
	}
	
	@Column(name = "officeUse", unique = false, nullable = true, insertable = true, updatable = true, length = 53)
	public java.lang.Double getOfficeUse() {
		return this.officeUse;
	}
	
	@Column(name = "oldContent", unique = false, nullable = true, insertable = true, updatable = true, length = 200)
	public java.lang.String getOldContent() {
		return this.oldContent;
	}
	
	@Column(name = "oldno", unique = false, nullable = true, insertable = true, updatable = true, length = 50)
	public java.lang.String getOldno() {
		return this.oldno;
	}
	
	@Column(name = "otherBUse", unique = false, nullable = true, insertable = true, updatable = true, length = 53)
	public java.lang.Double getOtherBuse() {
		return this.otherBuse;
	}
	
	@Column(name = "otherUse", unique = false, nullable = true, insertable = true, updatable = true, length = 53)
	public java.lang.Double getOtherUse() {
		return this.otherUse;
	}
	
	@Column(name = "plantUse", unique = false, nullable = true, insertable = true, updatable = true, length = 53)
	public java.lang.Double getPlantUse() {
		return this.plantUse;
	}
	@Column(name = "residentialUse", unique = false, nullable = true, insertable = true, updatable = true, length = 53)
	public java.lang.Double getResidentialUse() {
		return this.residentialUse;
	}
	
	@Column(name = "sno", unique = false, nullable = true, insertable = true, updatable = true, length = 10)
	public java.lang.Integer getSno() {
		return this.sno;
	}
	
	@Column(name = "stylisticUse", unique = false, nullable = true, insertable = true, updatable = true, length = 53)
	public java.lang.Double getStylisticUse() {
		return this.stylisticUse;
	}
	
	@Column(name = "touristUse", unique = false, nullable = true, insertable = true, updatable = true, length = 53)
	public java.lang.Double getTouristUse() {
		return this.touristUse;
	}
	
	@Column(name = "trafficUse", unique = false, nullable = true, insertable = true, updatable = true, length = 53)
	public java.lang.Double getTrafficUse() {
		return this.trafficUse;
	}
	
	@Column(name = "warehouseUse", unique = false, nullable = true, insertable = true, updatable = true, length = 53)
	public java.lang.Double getWarehouseUse() {
		return this.warehouseUse;
	}
	
	public int hashCode() {
		return new HashCodeBuilder()
			.append(getObjid())
			.toHashCode();
	}
	
	public void setBusinessUse(java.lang.Double value) {
		this.businessUse = value;
	}
	
	public void setChangeType(java.lang.Integer value) {
		this.changeType = value;
	}
	
	public void setCommFaciUse(java.lang.Double value) {
		this.commFaciUse = value;
	}
	
	public void setCreateDate(java.util.Date value) {
		this.createDate = value;
	}
	
	public void setCreateDateString(String value) {
		setCreateDate(DateConvertUtils.parse(value, FORMAT_CREATE_DATE,java.util.Date.class));
	}
	
	public void setDeedUse(java.lang.String value) {
		this.deedUse = value;
	}
	
	public void setDescribe(java.lang.String value) {
		this.describe = value;
	}
	
	public void setIndustrialUse(java.lang.Double value) {
		this.industrialUse = value;
	}
	
	public void setIntegrativeUse(java.lang.Double value) {
		this.integrativeUse = value;
	}
	
	public void setLandDate(java.util.Date value) {
		this.landDate = value;
	}
	
	public void setLandDateString(String value) {
		setLandDate(DateConvertUtils.parse(value, FORMAT_LAND_DATE,java.util.Date.class));
	}
	
	public void setLandno(java.lang.String value) {
		this.landno = value;
	}
	
	public void setMiningUse(java.lang.Double value) {
		this.miningUse = value;
	}
	
	public void setObjid(java.lang.String value) {
		this.objid = value;
	}
	
	public void setOfficeUse(java.lang.Double value) {
		this.officeUse = value;
	}
	
	public void setOldContent(java.lang.String value) {
		this.oldContent = value;
	}
	
	public void setOldno(java.lang.String value) {
		this.oldno = value;
	}
	
	public void setOtherBuse(java.lang.Double value) {
		this.otherBuse = value;
	}
	
	public void setOtherUse(java.lang.Double value) {
		this.otherUse = value;
	}
	
	public void setPlantUse(java.lang.Double value) {
		this.plantUse = value;
	}
	
	public void setResidentialUse(java.lang.Double value) {
		this.residentialUse = value;
	}
	
	public void setSno(java.lang.Integer value) {
		this.sno = value;
	}
	
	public void setStylisticUse(java.lang.Double value) {
		this.stylisticUse = value;
	}
	
	public void setTouristUse(java.lang.Double value) {
		this.touristUse = value;
	}
	

	public void setTrafficUse(java.lang.Double value) {
		this.trafficUse = value;
	}
	
	public void setWarehouseUse(java.lang.Double value) {
		this.warehouseUse = value;
	}
	
	public String toString() {
		return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
			.append("Objid",getObjid())
			.append("BusinessUse",getBusinessUse())
			.append("ChangeType",getChangeType())
			.append("CommFaciUse",getCommFaciUse())
			.append("CreateDate",getCreateDate())
			.append("DeedUse",getDeedUse())
			.append("Describe",getDescribe())
			.append("IndustrialUse",getIndustrialUse())
			.append("IntegrativeUse",getIntegrativeUse())
			.append("LandDate",getLandDate())
			.append("Landno",getLandno())
			.append("MiningUse",getMiningUse())
			.append("OfficeUse",getOfficeUse())
			.append("OldContent",getOldContent())
			.append("Oldno",getOldno())
			.append("OtherBuse",getOtherBuse())
			.append("OtherUse",getOtherUse())
			.append("PlantUse",getPlantUse())
			.append("ResidentialUse",getResidentialUse())
			.append("Sno",getSno())
			.append("StylisticUse",getStylisticUse())
			.append("TouristUse",getTouristUse())
			.append("TrafficUse",getTrafficUse())
			.append("WarehouseUse",getWarehouseUse())
			.toString();
	}
}

